/*
 * @Author: Leo.wang wanglizhigs@163.com
 * @Date: 2023-11-09 16:34:03
 * @LastEditors: Leo.wang wanglizhigs@163.com
 * @LastEditTime: 2023-11-10 10:31:42
 * @FilePath: /three-react/src/pages/CurveGeometry/Line1.tsx
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */
import { useEffect, useRef } from "react"
import createRender from '@/createRender';
import * as THREE from 'three'


const state = {}
export default function Page() {

  const container = useRef(null);
  useEffect(() => {
    if (!state.isMounted) {
      createRender(container)(render);
      state.isMounted = true;
    }
  }, [])



  function render(scene) {


    // // Shape表示一个平面多边形轮廓

    const shape = new THREE.Shape([
      new THREE.Vector2(0,0),
      new THREE.Vector2(50,0),
      new THREE.Vector2(50,50),
      new THREE.Vector2(0,50),
    ])

    const geometry = new THREE.ExtrudeGeometry(shape, {
      depth: 50, // 拉升长度
      bevelThickness: 10, // 拉升方向 倒角尺寸
      bevelSize: 5, // 垂直方向 倒角尺寸
      bevelSegments: 30, // 倒角细分数
      bevelEnabled: false, // 禁止倒角

    })

    const material = new THREE.MeshLambertMaterial({
      color: 0x00ffff,
      side: THREE.DoubleSide,
    });
    const mesh = new THREE.Mesh(geometry, material);


    scene.add(mesh);
  }

  return (
    <div id="container" className="full container" ref={container}></div>
  )
}